package cn.tqfeiyang.smartadmin.commons.toolbox;

import java.util.*;

/**
 * 集合工具类，对常用的集合操作进行封装。
 *
 * @author tqfeiyang
 * @wechat 18576228047
 * @email 1787585212@qq.com
 * @date 2024/8/15 8:41
 */
public final class CollectionUtils {

    /**
     * 返回空的列表。
     *
     * @return 空列表
     */
    public static <T> List<T> emptyList() {
        return Collections.emptyList();
    }

    /**
     * 校验集合是否为空
     *
     * @param coll 入参
     * @return boolean
     */
    public static boolean isEmpty(Collection<?> coll) {
        return com.baomidou.mybatisplus.core.toolkit.CollectionUtils.isEmpty(coll);
    }

    /**
     * @see CollectionUtils#isEmpty(Collection)
     */
    public static boolean isNotEmpty(Collection<?> coll) {
        return com.baomidou.mybatisplus.core.toolkit.CollectionUtils.isNotEmpty(coll);
    }

    /**
     * 校验Map是否为空
     *
     * @param map 入参
     * @return boolean
     */
    public static boolean isEmpty(Map<?, ?> map) {
        return com.baomidou.mybatisplus.core.toolkit.CollectionUtils.isEmpty(map);
    }

    /**
     * @see CollectionUtils#isEmpty(Map)
     */
    public static boolean isNotEmpty(Map<?, ?> map) {
        return com.baomidou.mybatisplus.core.toolkit.CollectionUtils.isNotEmpty(map);
    }

    /**
     * 创建默认HashMap
     *
     * @param <K> K
     * @param <V> V
     * @return HashMap
     * @see com.google.common.collect.Maps#newHashMap()
     */
    public static <K, V> HashMap<K, V> newHashMap() {
        return new HashMap<>();
    }
}
